package com.kaifamiao.decimal;

import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;

public class BigDecimalTest2 {

	public static void main(String[] args) {
		
		BigDecimal a = BigDecimal.valueOf( 1234 , 3 );
		System.out.println( a ); // 1.234
		
		BigDecimal b = BigDecimal.valueOf( 9876 , 2 );
		System.out.println( b );
		
		System.out.println( a.add( b ) ); // a + b
		System.out.println( a.subtract( b ) );// a - b
		
		System.out.println( a.divide( b , RoundingMode.HALF_UP ) ); // a / b 
		
		// 第一个参数采用 非负int值来设置精度(从第一个有效数值开始计数，计数起点是1)
		// 第二个参数指定 要使用的舍入模式
		final MathContext mc = new MathContext( 5 ,  RoundingMode.HALF_UP );
		
		System.out.println( a.divide( b , mc )); // a / b 
		
		System.out.println( a.multiply( b ) );
		System.out.println( a.multiply( b , mc ) );
		
		System.out.println( "- - ".repeat( 10 ) );
		
		BigDecimal c = a.movePointLeft( 1 );
		System.out.println( c );
		BigDecimal d = a.movePointRight( 1 );
		System.out.println( d );
		
	}

}
